let server = require("express")();
// 引入
let mysql = require("mysql")
const port = 81;
server.all("*", function(req, res, next) {
        //设置允许跨域的域名，*代表允许任意域名跨域
        res.header("Access-Control-Allow-Origin", "*");
        //允许的header类型
        res.header("Access-Control-Allow-Headers", "content-type");
        //跨域允许的请求方式 
        res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS");
        if (req.method.toLowerCase() == 'options')
            res.send(200); //让options尝试请求快速结束
        else
            next();
    })
    // 尝试连接
let sql = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '724372',
    database: 'teach'
});
sql.connect();
// 写端口81的nodejs部分
// 端口81、向前端返回所有信息
server.get("/flightList", function(request, response) {
        // 在数据库里面更具id值查询
        sql.query("SELECT *FROM flights", function(error, data) {
            if (error) {
                // 在HTML控制台上输出error
                console.log(error)
                    // 后端也要反应
                response.end("error");
                return;

            }
            response.end(JSON.stringify(data));
        })

    })
    // 删除接口：删除某一个航班信息
    // 路由地址也和上面的81端口不一样
server.get("/removelist", function(request, response) {
        // 检测前端是否获取到id数据
        // console.log(1)
        // 接受来自html的请求参数:id字段等于前段发送的id字段
        let id = request.query.id;
        sql.query(`DELETE FROM flights WHERE id=${id} `, function(error, data) {
            if (error) {
                // 在HTML控制台上输出error
                console.log(error)
                    // 后端也要反应
                response.end("error");
                return;
            }
            response.end("success");
            console.log(`已移除id:${id}条记录`)
        })

    })
    // 插入一条新数据
server.get("/addlist", function(request, response) {
        sql.query("INSERT INTO flights () VALUES ()", function(error, data) {
            if (error) {
                console.log(error);
                response.end("error")
                return;
            } else {
                response.end("success");
            }
        })
    })
    // 编辑一条数据
server.get("/editlist", function(request, response) {
    let id = request.query.id;
    let key = request.query.key;
    let value = request.query.value;
    sql.query(`UPDATE flights SET ${key}="${value}" WHERE id=${id}`, function(error, data) {
        if (error) {
            console.log(error);
            response.end("error");
            return;
        } else {
            response.end("success!!!")
        }
    })
})

server.listen(port);
console.log(`server is running at ${port}`);
// ..................................